package com.smart.community.region.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 住户展示对象
 *
 * @author Wu.Liang
 * @since 2024-12-21
 */
@Data
public class HouseholdVO {

    /**
     * 住户ID
     */
    private Long id;

    /**
     * 住户编码
     */
    private String householdCode;

    /**
     * 单元ID
     */
    private Long unitId;

    /**
     * 单元名称
     */
    private String unitName;

    /**
     * 所属楼栋ID
     */
    private Long buildingId;

    /**
     * 所属楼栋名称
     */
    private String buildingName;

    /**
     * 所属社区ID
     */
    private Long communityId;

    /**
     * 所属社区名称
     */
    private String communityName;

    /**
     * 楼层号
     */
    private Integer floorNumber;

    /**
     * 房间号
     */
    private String roomNumber;

    /**
     * 房间类型：1-一室，2-两室，3-三室，4-四室及以上
     */
    private Integer roomType;

    /**
     * 面积（平方米）
     */
    private BigDecimal area;

    /**
     * 使用面积（平方米）
     */
    private BigDecimal usableArea;

    /**
     * 朝向
     */
    private String orientation;

    /**
     * 产权类型：1-自有，2-租赁，3-其他
     */
    private Integer propertyType;

    /**
     * 房产证号
     */
    private String propertyCertificate;

    /**
     * 购买日期
     */
    private String purchaseDate;

    /**
     * 物业费单价(元/平方米)
     */
    private BigDecimal propertyFeeRate;

    /**
     * 状态：0-空置，1-已入住，2-装修中，3-出租
     */
    private Integer status;

    /**
     * 排序字段
     */
    private Integer sortOrder;

    /**
     * 房户描述
     */
    private String description;

    /**
     * 创建人
     */
    private Long createBy;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 更新人
     */
    private Long updateBy;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
} 